Techniques for displaying data based on characteristics of a display device

ABSTRACT

A method of selecting a portion of a block of data for display based on characteristics of a display device. The method comprises several steps. In the first step, a block of Electronic Program Guide (EPG) data is received at a communication device adapted to process this data. Next, an input is received at the communication device regarding an appearance of the display device. The communication device can be a set-top box. The appearance of the display includes, but is not limited to, the resolution, the aspect ratio (AR), and the physical size of the display. Based on these inputs, the communication device next selects a portion, more or fewer columns or rows, of the block of EPG data to be displayed on the display device. The portion of the EPG data selected is formatted and communicated to the display device, e.g. television, for viewing by the user.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is a continuation of U.S. patent application Ser. No. 11/006,065 filed Dec. 6, 2004 which is a continuation of U.S. Pat. No. 6,839,903 issued Jan. 4, 2005.

BACKGROUND OF THE INVENTION

As the number of broadcasters increase and the number of new and rerun television (TV) programs and movies increase, a need arises for a method to provide this increasing amount of information to a viewer electronically. Conventional televisions and broadcasters utilize a feature referred to as an Electronic Programming Guide (EPG) to communicate a schedule of upcoming television or movie programs to a viewer via a television screen.

Referring to prior art FIG. 1A, a table 120 of a conventional block of data for an EPG shown. The table 120 has a top column of time 124 and a vertical column for channel 122. Program information, e.g. program A info. 128 a, falls under a specific time, e.g., 9:00 a.m. on week 1 124 a, and under a specific broadcaster, e.g. ABC 122 a, or media provider, e.g., Gemstar. Specifically, table 120 can span a wide range of time 126, such as one or two weeks of programming information. Similarly, the number of broadcasters 129 displayed can vary significantly. That is, programming information for either a single broadcaster, e.g. ABC 122 a, or for multiple broadcasters, e.g. ABC 122 a through PAX 122 f, can be provided by a carrier.

The block of data is stored in a memory block of the display device, e.g. a television set because the entire block of data cannot be displayed at one time, due to the limited size of a television screen and the extreme size of the amount of data in the EPG, a need arises for a method and apparatus to intelligently select and format a suitable amount of data from the block of EPG data to display on the display device.

Conventionally, only a one hour block of EPG scheduling, e.g. block 130 of prior are FIG. 1A, is typically presented on a display device, such as a television screen. This is a very limited span of time for a viewer to plan a viewing schedule. Consequently, a need arises for displaying a wider range of information of the EPG.

Referring to prior art FIG. 1B, two conventional television screen formats are shown. The conventional television screen 102, having a matrix of pixels 106, has a height 103 and a width 104. The relationship between the width 104 and the height 103 of a display is referred to as an aspect ratio (AR). In the case of the first television set 102, the AR is 4:3. This 4:3 AR is the primary reason for the standardized one-hour EPG scheduling block provided on a television screen. However, with the introduction of other television formats, ARs different from the standardized 4:3 AR have arisen. For example, another television 104, having a matrix of pixels 108, has a height 109 and a width 116. The corresponding AR of this format, for television 104, is 16:9. Thus, a need arises for a method and apparatus to provide a different formats of EPG information to a display device.

Unfortunately, conventional methods and devices do not allow a single format of EPG data to be aesthetically displayed on a variety of television sets with different ARs, e.g. that are different than the AR of the EPG data. For example, an EPG table formatted for one AR may not be readable on a device having a significantly different AR from the EPG table because the text will have an inappropriate height or width when displayed. Devices with different ARs will continue to exist as long as legacy devices continue to be used and as long as new devices with different ARs are introduced into the market. Broadcasting a standardized EPG display format will not, by itself, be compatible with a variety of television displays having different ARs. The displayed EPG data will either be too wide or too tall for one display device or it will be too narrow or too short for another display device. As a result, a need arises for a more flexible method of providing EPG data to a display device.

Furthermore, other display characteristics of a display device can have an effect on how much data from a large block of data can be displayed. For example, display device characteristics, such as resolution and size of the display to name a few, can have an effect on how much data can readably be displayed on the display device. Consequently, a more effective method for displaying EPG information on a display device is needed.

SUMMARY OF THE INVENTION

The field of the present invention pertains to a video device. More particularly, the present invention relates to the field of displaying a portion of a block of data, e.g. an electronic program guide, on a display device based on the display characteristics of the display device.

The present invention provides a method and apparatus to intelligently select and format a suitable amount of data from the block of EPG data to display on a display device. Furthermore, the present invention provides a method for displaying a wider range of information of the EPG than is currently available. That is, the present invention provides a method and apparatus that takes advantage of the wider AR of a wide aspect ratio display, to display additional EPG program guide information. At the same time, the present invention provides a method and apparatus that can be adapted to select and format a portion of an EPG block of data that would be suitable to display devices with different ARs, thus accommodating new and legacy devices. The present invention also provides a method and apparatus that optimizes the amount of readable data displayed on the display device based on display device characteristics such as resolution and size of the display device.

Specifically, one embodiment of the present invention provides a method of determining a portion of a block of data to be provide to a display device. In the present embodiment, the method comprises several steps. In the first step, a block of EPG data is received at a communication device adapted to process this data. Next, an input is received at the communication device regarding an appearance of the display device. The communication device can be an integrated or add-on component of a television set or a set-top box. A television set can be adapted to automatically transmit data regarding its appearance, and thus be transparent to the user. The appearance of the display includes, but is not limited to, the resolution, the aspect ratio (AR), and the physical size of the display. Based on these inputs, the communication device will select a portion of the block of EPG data to be displayed on the display device. The portion of the EPG data selected is formatted and communicated to the display device, e.g. television, for viewing by the user.

Another embodiment of the present invention implements the method of determining a portion of a block of data to be provided to a display device by using a processor memory that can be located in the set-top box or a TV. The steps provided in the previous paragraph are implemented as data and instructions of the memory to be processor.

These and other advantages of the present invention will become clear to those of ordinary skill in the art after having read the following detailed description of the preferred embodiments which are described herein.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention are illustrated by way of example and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:

FIG. 1A shows a table of a conventional block of data for an Electronic Programming Guide (EPG).

FIG. 1B shows a conventional 4:3 AR television screen and a conventional 16:9 AR television screen.

FIG. 2A shows a block diagram of a video device, in accordance with one embodiment of the present invention.

FIG. 2B shows a block of EPG data formatted for a 16:9 aspect ratio display device, in accordance with one embodiment of the present invention.

FIG. 2C shows a block of EPG data formatted for a 4:3 aspect ratio display device, in accordance with one embodiment of the present invention.

FIG. 3 shows a flowchart of the steps performed to determine a portion of a block of data to be provided to a display device, in accordance with one embodiment of the present invention.

FIG. 4 shows a flowchart of the steps performed to determine a portion of a block of data to be provided to a display device based on the display characteristics of the display device, in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made in detail to the preferred embodiments of the invention, examples of which are illustrated in the accompanying drawings. While the invention will be described in conjunction with the preferred embodiments, it will be understood that they are not intended to limit the invention to these embodiments. On the contrary, the invention is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the invention as defined by the appended claims. Furthermore, in the following detailed description of the present invention, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be obvious to one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail as not to unnecessarily obscure aspects of the present invention.

Some portions of the detailed descriptions which follow, e.g. the processes, are presented in terms of procedures, logic blocks, processing, and other symbolic representations of operations on data bits within a computer or a digital system memory. These descriptions and representations are the means used by those skilled in the arts to most effectively convey the substance of their work to others skilled in the art. A procedure, logic block, process, etc., is herein, and generally, conceived to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these physical manipulations take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a processor. For reasons of convenience, and with reference to common usage, these signals are referred to as bits, values, elements, symbols, characters, terms, numbers, or the like with reference to the present invention.

It should be borne in mind, however, that all of these terms are to be interpreted as referencing physical manipulations and quantities and are merely convenient labels to be interpreted further in view of terms commonly used in the art. Unless specifically stated otherwise as apparent from the following discussions, it is understood that throughout discussions of the present invention, terms such as “receiving,” “selecting,” “formatting,” “communicating,” or the like, refer to the action and processes that can be implemented by an electronic computing device, that manipulates and transforms data. The data is represented as physical (electronic) quantities within the registers and memories of the device, and is transformed into other data similarly represented as physical quantities within the device components, or computer system memories or registers, or other such information storage, transmission or display devices.

Referring now to FIG. 2A, a block diagram of a video device 200 is shown, in accordance with one embodiment of the present invention. Video device 200 can be a display source device in a set-top box, a Personal Computer (PC) having a tuner for video viewing, a television set, such as a high resolution digital TV, an analog TV, or some other display device. Video device 200 includes a frame buffer 212, a processor 208, a memory 210, and a receiver 204. Processor 208 is coupled to frame buffer 212, memory 210, and receiver 204. Additionally, broadcast input lead 206, adapted to receive a video signal, is coupled to receiver 204. Broadcast input lead 206 can be adapted to receive a signal via cable, satellite, or antennae.

Additionally, a user input lead 213 is coupled to receiver 204 in FIG. 2A and a display characteristic input lead 216 is coupled to processor 208. User input lead 213 is adapted to receive a signal from a user of a display device 218. A signal can be provided to user input lead 213 via a number of sources such as a remote control device, a Video Cassette Recorder (VCR), or input devices, such as buttons, located on the display device 218. Display characteristic input lead 216 is adapted to receive a signal from a display device 218. In one embodiment, video device 200 can have only a display characteristic input lead 216 and no user input lead 213. In another embodiment, video device 200 can have only user input lead 213 and no display characteristic input lead 216.

Video device 200 of FIG. 2A provides a single output on image output lead 214, which is coupled to frame buffer 212. Frame buffer 212 is adapted to provide a formatted frame showing a portion of the EPG table. While the components of video device 200 are shown in a specific arrangement and a specific coupling configuration, the present invention is well-suited to adding other components and to altering the coupling configuration to suit specialized applications.

Memory 210 used in video device 200, for the present invention, can either be permanent memory, such as read only memory (ROM), or temporary memory such as random access memory (RAM). Memory 210 can also be any other type of memory storage, capable of containing program instructions, such as a hard drive, a CD ROM, or flash memory. Furthermore, processor 208 can either be a dedicated controller, an existing system processor, a microprocessor, or some form of a state machine.

Referring now to FIG. 2B, a block of EPG data formatted for a 16:9 aspect ratio display device 230, in accordance with one embodiment of the present invention. Because display device 230 has a wider aspect ratio than a conventional television, it can display a larger portion of a block of EPG data. Consequently, the 9:00 a.m. slot 124 a through the 10:00 a.m. slot 124 c and the ABC channel 122 a through the PAX channel 122 f can all be displayed at once. While the present embodiment shows a specific quantity of time slots and channels, the present invention is well-suited to displaying a wide range of time slots and channels.

Referring now to FIG. 2C, a block of EPG data formatted for a 4:3 aspect ratio display device 240, in accordance with one embodiment of the present invention. Because display device 240 has a conventional aspect ratio, it can only display a nominal portion of a block of EPG data. Consequently, only the 9:00 a.m. slot 124 a through the 9:30 a.m. slot 124 b and the ABC channel 122 a through the CBS channel 122 b can all be displayed at once. While the present embodiment shows a specific quantity of time slots and channels for a 4:3 aspect ratio display device, the present invention is well-suited to displaying a wide range of time slots and channels. Furthermore, the present invention is well-suited to providing display information for a display device with any aspect ratio. The two embodiments provided in FIGS. 2B and 2C were chosen because they are standards. In one embodiment, FIG. 2B is a digital display device while FIG. 2C is a conventional analog display device. Thus, the present invention accommodates both the new digital technology devices as well as the legacy analog devices.

Referring now to FIG. 3 a flowchart is shown of the process performed to determine a portion of a block of data to be provided to a display device, in accordance with one embodiment of the present invention. By using the process 3000 embodiment of the present invention, intelligent formatting can be performed to optimize the amount of EPG data provided on a display device to a viewer. Additionally, the present invention provides for the use of legacy devices, such as televisions with standardized aspect ratios. While the present embodiment implements process 3000 in a digital television set, the present invention can be implemented in other types of devices, such as an analog television, a Personal Computer (PC) having a tuner for television viewing, or a set-top box. Process 3000 deals with the user interface, human interface, ergonomics, and cosmetic design of any display product that has, or is used for, display data.

Process 3000 begins with step 3002. In step 3002 of the present embodiment, a block of data is received at a video device. Step 3002 is implemented, in one embodiment, by the video device such as video device 200 shown in FIG. 2A. Specifically, video device 200 can receive a block of data at receiver 204 via broadcast input lead 206. In one embodiment, a conventional block of data for EPG, such as that shown in prior art FIG. 1A, can be received at video device 200. Broadcast input lead 206 can be adapted to receive a signal via cable, satellite, antennae, or Internet.

More specifically, the block of data, e.g. the EPG data, can be provided by the broadcaster via many different means. For example, a broadcaster can download two weeks of scheduling information in early morning hours on a semi-monthly basis. Alternatively, a broadcaster of media provider can transmit the block of data in real-time to the display device. Furthermore, transmission of the block of data can occur over any conventional broadcasting means. That is, transmission of the block of data can occur via program transport stream of digital terrestrial broadcast, via cable broadcast, or via satellite broadcast. For example, transmission of the block of data can occur via the National Television Standards Commission (NTSC) use of field 2 line 21×DS. Alternatively, transmission of the block of data can occur via program specific information protocol (PSIP) A/65 of the Advanced Television Standards Commission (ATSC). In another protocol, normal or APG transmission of the block of data over the Digital Satellite System (DSS) can be used. The Dish Network can also be adapted to provide the block of data. For cable television, either in-band, out-of-band, or DOCSIS protocol can be utilized to provide the block of data.

Alternative embodiments can be used to implement step 3002. For example, while the present embodiment utilizes a standard data block of EPG data, the present invention is well-suited to receiving any size and format of block of EPG data. Furthermore, while the present embodiment specifies the content of the block of data as the EPG data, the present invention can be applied to any block of data to be displayed on a display device. For example, menu setting data for a TV or a VCR can be selected and formatted using the present invention. Following step 3002, process 3000 proceeds to step 3004.

In step 3004 of the present embodiment, input regarding the appearance of the display is received. A display device can provide input 3004 a on its display characteristics. Step 3004 and input 3004 a are implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Specifically, video device 200 is adapted to receive input 3004 a on display characteristic input lead 216 from a display device. This embodiment is applicable when a display device has a component that will automatically transmit data regarding the appearance of the display device. In one embodiment the appearance of the display can include data codes representing the resolution, the aspect ratio (AR), and/or the physical size of the display device. Following step 3004, process 3000 proceeds to step 3006.

In step 3006 of the present embodiment, an inquiry determines whether the display device input 3004 a for display characteristics exists. If display characteristics input 3004 a does exist, then process 3000 proceeds to step 3008. This case accounts for an intelligent digital or analog television that provides an output of its display characteristics. However, if no display characteristics input exist, then process 3000 proceeds to step 3014. This latter case accounts for display devices that have no intelligent output devices. Thus, the present invention, in step 3006, provides the flexibility of accommodating display devices that provide an output and display devices that do not provide an output.

Step 3008 arises if a display characteristics input does exist. In step 3008 of the present invention, a portion of the block of data for display on the display device is selected. Step 3008 is implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Specifically, video device 200 is adapted to analyze display device characteristic input 3004 a and decide the appropriate portion of the block of data to display. In one embodiment, the Extended Data Service (XDS) system described in Electronic Industries Association-608 (EIA-608), A or B, and incorporated by reference herein, can be implemented to convey the display characteristics, such as the aspect ratio of the display, in the vertical blanking interval. In an alternative embodiment, display device characteristics can be transmitted along with the broadcast video signal. For example, default aspect ratio data can be transmitted in the digital transport stream of an ATSC broadcast, as well as other proprietary digital broadcasts. The present invention is also well-suited to other aspect ratio signal schemes, such as the International Electrotechnical Commission-1880 (IEC-1880) standard on line 20 of the vertical blanking interval (VBI). Additionally, in a computer environment, display device characteristics can be transmitted using suitable communication protocols, such as the computer monitor standard under Video Electronics Standards Association (VESA). Subsequent process 4000 provides steps that can be utilized for implementing step 3008 of process 3000. Following step 3008, process 3000 proceeds to step 3010.

In step 3010 of the present invention, an amount of data is custom fit for the display device on which it will be displayed, according to its display characteristics. Step 3010 is implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Specifically, frame buffer 212 of video device 200 is adapted to format the block of data, chosen in step 3008, for display on the display device. Methods and apparatus used for formatting the block of data are well-known in the art and are not described herein for purposes of clarity. In one embodiment, the block of data has a single common format, e.g. modular columns and/or rows, that allows variable amounts of data to be formatted for display simply by adding or removing the modular rows or columns. However, the present invention is well-suited to alternative formats of the block of data, such as asymmetrical formatted data. In another embodiment, a font type and size can be customized to provide an optimal display of the data.

Step 3010 of the present invention may also be implemented using anamorphic formatting techniques that magnify or reduce images to dissimilar degrees along different axes. By doing so, the present implementation of step 3010 can custom fit an amount of data for a given display device's display characteristics. For example, one embodiment can use vertical compression (v-compression) with the associated blacked-out top and/or bottom region, to maintain a desired quantity of EPG rows and columns to be displayed on the display device. This latter embodiment can be implemented on either analog or digital display devices. With analog televisions, the present embodiment is well-suited to discrete phosphorous elements, such as the traditional red, green, blue (RGB) dot trio, or to continuous phosphorous elements, e.g. SONY Trinitron™ tube having vertical strips with unlimited resolution. In particular, the v-compression embodiment compresses the vertical distance of the raster in order to provide the appropriate AR for the data, in one embodiment. Step 3010 can also be accomplished by other methods of anamorphic formatting besides v-compression.

The v-compression embodiment for step 3010 can be implemented by automatically programming a receiver to implement the v-compression process. For example, in one embodiment, an EPG data signal, formatted with al 6:9 AR, is received at a receiver for a television having a different AR, such as 4:3. The receiver is automatically programmed to provide the required amount of v-compression to display the intended block of EPG data while maintaining an aesthetic AR of the EPG data displayed. Thus, the 16:9 EPG data is not stretched in a vertical direction to match the 4:3 display AR, but is compressed in the vertical direction with an appropriate black-out strip on the top and/or the bottom of the image. Following step 3010, process 3000 proceeds to step 3012.

In step 3012 of the present invention, the image frame produced by step 3010 is communicated to the display device. Step 3012 is implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Specifically, image output lead 214 is adapted to communicate the image frame, produced by frame buffer 212 of display source device 200, to the display device. Following step 3012, process 3000 ends.

As an example for step 3008 through 3012, if an input indicating a high resolution, high aspect ratio 16:9, large television set is received, a relatively large portion of the display block will be selected for subsequent display on the display device. One embodiment of this scenario is presented in FIG. 2B. Compared to conventional EPG display, a one and one-half hour portion, e.g. more columns, of EPG data can be selected for display, and six stations, e.g. more rows, of the EPG data can be selected for display on the display device. That is, in one example, program information for 9:00 a.m. week 1 column 124 a through 10:00 a.m. week 1 column 124 c, for stations ABC 122 a through PAX 122 f, can be chosen for subsequent display, as shown in FIG. 2B. While the present example chooses a specific input situation, the present invention is well-suited to a plethora of cases, with their appropriate trade-off. FIG. 2C provides an alternative embodiment of a conventional AR display device displaying a narrower and shorter table of EPG data.

Step 3014 arises if no display characteristics input exists, per the inquiry of step 3006. In step 3014 of the present invention, the user is prompted to manually provide display information. Display information can includes data such as the display characteristics of the display device. Step 3014 is implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Specifically, video device 200 is adapted to prompt user via an appropriate message, from memory 210, on image output lead 214 to the display device. Following step 3014, process 3000 proceeds to step 3016.

In step 3016 of the present embodiment, input regarding the appearance of the display is received. Input block 3016 a is received as user input display characteristics. Step 3016 and input 3016 a are implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Specifically, input from a viewer, or user, can be received via user input lead 213 A signal can be provided to user input lead 213 via a number of sources such as a remote control device, a video cassette recorder (VCR), or input devices, such as buttons, located on the display device. This embodiment is particularly applicable when a display device does not have a component that will automatically transmit data regarding the display characteristics of the display device. In one embodiment the display characteristics of the display device provided by the user can include inputs such as the resolution, the aspect ratio (AR), and the physical size of the display. Additionally, the user can input a user-definable font type and font size for the text of the data to be displayed. Following step 3016, process 3000 proceeds to step 3018.

In step 3018 of the present embodiment, an inquiry determines whether the user input data on display characteristics exists. If user input on display characteristics input does exist, then process 3000 proceeds to step 3008. This case accounts for a user who is able to provide viable input data. However, if no user-supplied display characteristics input exist, then process 3000 proceeds to step 3020. This latter case accounts for a user who is unable to provide viable input data. Thus, the present invention, in Step 3018, provides the flexibility of accommodating cases when the user can and cannot provide useful input data. Following step 3018, process 3000 proceeds to step 3020.

Step 3020 arises if no user-supplied display characteristics input exists. In step 3020 of the present invention, a portion of the block of data is selected, based on minimum display characteristics. Step 3020 is implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Specifically, video device 200 is adapted to select a portion of block of EPG data from memory 210, based on a default value for display characteristics, e.g. a conventional aspect ratio characteristic, also stored in memory 210. Display characteristics, such as minimum available display characteristics, can be pre-programmed in memory 210, received via broadcast input 206, or input by user via input lead 213. While the present embodiment begins with minimum display characteristics, the present invention is well-suited to alternative formats. For example, a median or maximum display characteristic format can be chosen. The present embodiment chooses a minimum display characteristic, such as minimum AR, minimum display device size, and minimum resolution, to provide a readable display of EPG data for all possible display devices. From this point, the larger AR, larger size, and/or higher resolution display devices can increase the portion of data to be viewed. Following step 3020, process 3000 proceeds to step 3022.

In step 3022 of the present invention, the portion of the block of data selected is formatted as an image frame for display on the display device. Step 3022 is implemented, in one embodiment, in a similar manner to that presented for step 3010. Following step 3022, process 3000 proceeds to step 3024.

In step 3024 of the present invention, the image frame produced by step 3022 is communicated to the display device. Step 3024 is implemented, in one embodiment, in a similar manner to that presented for step 3012. Following step 3024, process 3000 proceeds to step 3026.

In step 3026 of the present embodiment, input regarding the appearance of the display is received. A user can provide display device characteristics input 3026 a. Step 3026 and input 3026 a are implemented, in one embodiment, by the video device 200 shown in FIG. 2 a. Specifically, input from a viewer, or user, can be received via user input lead 213, including the acceptability of the displayed portion of the block of EPG data chosen by the present embodiment. A signal can be provided on user input lead 213 via a number of sources such as a remote control device, a video cassette recorder (VCR), or input devices, such as buttons, located on the display device (not shown). In one embodiment the user can provide a binary response, such as “yes” or “no,” or a variable response, such as an input from “1” as worst to “10” as best. Following step 3026, process 3000 proceeds to step 3028.

In step 3028 of the present embodiment, an inquiry determines whether an alternative display characteristic exists. If an alternative display characteristic does exist, then process 3000 proceeds to step 3030. This case accounts for a possible display configuration, e.g. a display configuration for a larger size and greater resolution display device format, that has not been reviewed and graded by the viewer. Alternatively, inquiry 3028 can also evaluate user input 3026 a as a weighting factor on whether to provide the user with any additional configurations of EPG data. If no alternative display characteristic exist, then process 3000 proceeds to step 3032. This latter case accounts for the point where all available configurations of EPG data have been provided to the viewer for evaluation.

Step 3030 arises if an alternative display characteristic does exist per the inquiry of step 3028. In step 3030 of the present invention, a different portion of the block of data is selected for formatting and displaying on the display device. Step 3030 is implemented, in one embodiment, by the video device 200 shown in FIG. 2A. That is, a different portion, or an increment value of a display device format, e.g. screen size, is retrieved from memory 210 and implemented with respect to a portion of the data block, also stored in memory 210. The present invention is well-suited to many different embodiments for indexing through the possible portions and formats of a block of data. Following step 3030, the process 3000 returns to step 3022.

Step 3032 arises if no alternative display characteristics exists. In step 3032 of the present invention, a block of data and a format is chosen as a default value. That is, when the appropriate amount of choices for display format and size have been evaluated, the best choice is labeled as a default value. Input from the user, per input 3026 a, is used in the evaluation step. In this manner, the user only has to set up the communication device, used for formatting blocks of data, one time. The default value can be called up and implemented for future viewing of the block of data. In an alternative embodiment, inputs from the user can be weighted to optimize or bias the result. Step 3032 is implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Specifically, video device 200 is adapted to choose a default portion of, and format for, a block of data and to store it in memory as a default value for future use. Step 3032 can alternatively be implemented after step 3012, in one embodiment, to create a default portion and format for a block of data for a display device that provides output. Following step 3032, process 3000 ends.

Referring now to FIG. 4, a flowchart is shown of the process performed to determine a portion of a block of data to be provided to a display device based on the display characteristics of the display device, in accordance with one embodiment of the present invention. Process 4000 provides one embodiment of the present invention for deciding the appropriate portion and formatting of block of data, such as the electronic programming information (EPG), for subsequent presentation to a display device.

Process 4000 begins with step 4002. In step 4002 of the present embodiment, display characteristics of a display device are received. Step 4002 is implemented, in one embodiment, by the video device 200 shown in FIG. 2A. Inputs on the display characteristics of a display device can be received either on user input lead 213 or display characteristic input 216. Display inputs can include aspect ratio input 4002 a, resolution input 4002 b, and/or display size input 4002 c for the display device. Following step 4002, process 4000 proceeds to step 4004.

In step 4004 of the present embodiment, an inquiry determines whether the aspect ratio input is a high ratio. If the aspect ratio is high, then process 4000 proceeds to step 4006. This case accounts for a display aspect ratio corresponding to one standard television AR, e.g. an aspect ratio of 16:9. However, if the aspect ratio is not high, then process 4000 proceeds to step 4008. This latter case accounts for a display aspect ratio corresponding to a display device with a different AR. Alternatively, aspect ratio input can be compared to a predetermined threshold value stored in memory to decide whether to proceed to step 4006 or step 4008.

Step 4006 arises if the aspect ratio is a high value, as determined by step 4004. In step 4006, a horizontal portion, e.g. the number of columns, of the block of data, is increased to accommodate a higher aspect ratio. The specific value of the increase can be optimized or determined for specific applications. Following step 4006, process 4000 proceeds to step 4010.

Step 4008 arises if the aspect ratio is not a high value, as determined by step 4004. In step 4008, a horizontal portion, e.g. the number of columns, of the block of data, is decreased to accommodate a lower aspect ratio. The specific value of the decrease can be optimized or determined for specific applications. Following step 4008, process 4000 proceeds to step 4010.

In step 4010 of the present embodiment, an inquiry determines whether the resolution input is a high value. If the resolution is a high value, then process 4000 proceeds to step 4012. This case accounts for a display having a high resolution. Typically, a higher resolution display allows for additional bandwidth of data to be displayed. However, if the resolution is not a high value, then process 4000 proceeds to step 4014. This latter case accounts for a display having a low resolution. In one case, the resolution setting can be binary, e.g. high resolution or low resolution. Alternatively, the present invention is well-suited to having a gradient scale having numerous values, and numerous corresponding steps in which to proceed. In yet another embodiment, resolution input can be compared to a predetermined threshold resolution value to decide whether to proceed to step 4012 or step 4014.

Step 4012 arises if the resolution is a high value, as determined by step 4010. In step 4012, a horizontal portion, e.g. the number of columns, of the block of data and/or a vertical portion, e.g. the number of rows, of the block of data is increased to accommodate a higher resolution display device input. The specific value of the increase can be optimized or determined for specific applications. Following step 4012, process 4000 proceeds to step 4016.

Step 4014 arises if the resolution is not a high value, as determined by step 4010. In step 4014, a horizontal portion, e.g. the number of columns, of the block of data and/or a vertical portion, e.g. the number of rows, of the block of data is decreased to accommodate a lower resolution display device input. The specific value of the decrease can be optimized or determined for specific applications. Following step 4014, process 4000 proceeds to step 4016.

In step 4016 of the present embodiment, an inquiry determines whether the display device size input is a high value. If the size input is a high value, then process 4000 proceeds to step 4018. This case accounts for a large display device, which can provide a larger size of the data to be displayed, and thus a greater, and thus finer, amount of data to be displayed. However, if the size input is not a high value, then process 4000 proceeds to step 4020. This latter case accounts for a small display device. Alternatively, size input can be compared to a predetermined threshold value to decide whether to proceed to step 4018 or step 4020.

Step 4018 arises if the size input is a high value, as determined by step 4016. In step 4018, a horizontal portion, e.g. the number of columns, of the block of data and/or a vertical portion, e.g. the number of rows, of the block of data is increased to accommodate a larger size of the display device. The specific value of the increase can be optimized or determined for specific applications. Following step 4018, process 4000 ends.

Step 4020 arises if the size input is not a high value, as determined by step 4016. In step 4020, a horizontal portion, e.g. the number of columns, of the block of data and/or a vertical portion, e.g. the number of rows, of the block of data is decreased to accommodate a smaller size of display device. The specific value of the decrease can be optimized or determined for specific applications. Following step 4020, process 4000 ends.

Additionally, the present invention is well-suited to inputs other than, or in addition to, inputs 4002 a-4002 c. Similarly, the present invention is well-suited to additional inquiries relating to additional inputs, along with the appropriate additional subsequent steps.

The potential results of inquiries 4004, 4010, and 4016 can lead to conflicting results for the portion of the block of data to be provided to the display device in the present embodiment. In one case, two different inputs of opposing qualities can have the effect of canceling each other out, with a nominal portion of data being ultimately provided to a display device. In another embodiment, different input values can be weighted depending upon the input, reasoning that one input will have a greater influence on the readability of the displayed information. The present invention is well-suited to many different alternatives for implementing a composite decision for the quantity of vertical and horizontal portion of block of data to display.

While processes 3000 and 4000 of the present embodiment shows a specific sequence and quantity of steps, the present invention is suitable to alternative embodiments. For example, not all the steps provided for processes 3000 and 4000 are required for the present invention. For example, an alternative embodiment of process 3000 can omit steps 3020 through 3032 if the do-loop function is not desired for a given application. Furthermore, additional steps can be added to the steps presented in the present embodiment. Likewise, the sequence of the steps can be modified depending upon the application. While processes 3000 and 4000 are shown as a single serial process, it can also be implemented as a continuous or parallel process.

Many of the instructions for the steps, and the data input and output from the steps of processes 3000 and 4000 are implemented utilizing memory 210 and processor 208, as shown in FIG. 2A. The memory storage 210 of the present embodiment can either be permanent, such as read only memory (ROM), or temporary memory such as random access memory (RAM). Memory 210 can also be any other type of memory storage, capable of containing program instructions, such as a hard drive, a CD ROM, or flash memory. Furthermore, processor 208 can either be a dedicated controller, an existing system processor, or it can be a dedicated digital signal processing (DSP) processor. Alternatively, the instructions can be implemented using some form of a state machine.

In view of the embodiments presented herein, the present invention provides a method and apparatus to intelligently select and format a suitable amount of data from the block of EPG data to display on a display device. Furthermore, the present invention provides a method for displaying a wider range of information of the EPG than is currently available. That is, the present invention provides a method and apparatus that takes advantage of the wider AR of some display devices to display additional EPG program guide information. At the same time, the present invention provides a method and apparatus that can be adapted to select and format a portion of an EPG block of data that would be suitable to display devices with different ARs, thus accommodating new and legacy devices. The present invention also provides a method and apparatus that optimizes the amount of readable data displayed on the display device based on display device characteristics such as resolution and size of the display device. While the present embodiments are applied to an EPG block of data, the present invention is well-suited to any block of data including any text-based data or any graphics-based data.

The foregoing descriptions of specific embodiments of the present invention have been presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed, and obviously many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the Claims appended hereto and their equivalents. 

1. In a video device, a method of determining a portion of a block of text-based data to be provided to a display device, said method comprising: receiving said block of text-based data; receiving one or more characteristics of said display device from said display device; selecting a portion of said block of text-based data corresponding to an array of columns and rows based on said one or more characteristics received from said display device; receiving said one or more characteristics of said display device from a user, if said one or more characteristics are not received from said display device; selecting said portion of said block of text-based data corresponding to said array of columns and rows based on said one or more characteristics received from said user; formatting said portion of said block of text-based data to create an image frame for said display device; and communicating said image frame to said display device.
 2. The method recited in claim 1, further comprising selecting said portion of said block of text-based data corresponding to said array of columns and rows based on a default value for said one or more characteristics of said display device, if said one or more characteristics are not received from said display device or said user.
 3. The method recited in claim 1, further comprising: receiving a second input from a user regarding an appearance of said image frame on said display device; changing said portion of said block of text-based data corresponding to an array of columns and rows of based on said second input from said user; formatting said changed portion of said block of text-based data to create an adjusted image frame for said display device; and communicating said adjusted image frame to said display device.
 4. The method recited in claim 1, wherein said one or more characteristics of said display device includes an aspect ratio data regarding said display device.
 5. The method recited in claim 4, wherein said one or more characteristics of said display device includes a resolution data regarding said display device.
 6. The method recited in claim 5, wherein said one or more characteristics of said display device includes a screen size data regarding said display device.
 7. The method recited in claim 1, wherein said video device is a set-top box.
 8. The method recited in claim 1, further comprising the step of storing said block of text-based data in a memory buffer for subsequent use.
 9. The method recited in claim 1, wherein said block of text-based data is on-screen display information.
 10. The method recited in claim 9, wherein said on-screen display information is an electronic programming guide (EPG).
 11. The method recited in claim 1 wherein said portion of said block of text-based data to be displayed and said formatting of said portion of said block of text-based data is adapted for a display device having an aspect ratio of 4:3.
 12. The method recited in claim 1 wherein said portion of said block of text-based data to be displayed and said formatting of said portion of said block of text-based data is adapted for a display device having an aspect ratio of 16:9.
 13. A video device comprising: a receiver unit for receiving a block of text-based data; a processor coupled to said receiver unit; and a computer readable memory coupled to said processor and containing program instructions stored therein that when executed cause said processor to implement a method for determining a portion of said block of text-based data to be provided to a display device comprising: receiving one or more characteristics of said display device from said display device; selecting a portion of said block of text-based data corresponding to an array of columns and rows of an electronic on-screen display information based on said one or more characteristics received from said display device; receiving said one or more characteristics of said display device from a user, if said one or more characteristics are not received from said display device; selecting said portion of said block of text-based data corresponding to an array of columns and rows of said electronic on-screen display information based on said one or more characteristics received from said user; formatting said portion of said block of text-based data to create an image frame for said display device; and communicating said image frame to said display device.
 14. The video device recited in claim 13, further comprising a memory buffer coupled to said processor for storing said block of text-based data.
 15. The video device recited in claim 13, wherein said electronic on-screen display information is Electronic Program Guide (EPG) information.
 16. The video device recited in claim 13, wherein said method implemented by said processor further comprises selecting said portion of said block of text-based data corresponding to an array of columns and rows of said electronic on-screen display information based on a default value for said one or more characteristics of said display device, if said one or more characteristics are not received from said display device or said user.
 17. The video device recited in claim 13, wherein said method implemented by said processor further comprises: receiving a second input from a user regarding an appearance of said image frame on said display device; changing said portion of said block of text-based data corresponding to an array of columns and rows of said electronic on-screen display information based on said second input from said user; formatting said changed portion of said block of text-based data to create an adjusted image frame for said display device; and communicating said adjusted image frame to said display device.
 18. The video device recited in claim 13, wherein said one or more characteristics of said display device includes an aspect ratio of said display device.
 19. The video device recited in claim 13, wherein said one or more characteristics of said display device includes a resolution of said display device.
 20. The video device recited in claim 13, wherein said one or more characteristics of said display device includes a screen size of said display device. 